A backup of a system at a given time may use a snapshot to create one or more files that may be used to re-create the system as it existed at the given time. A continuous data protection (“CDP”) system may be used to reduce overall backup file size by capturing only system modifications that occur after the snapshot is created. CDP may also be used to provide access to versions of files as they existed between backups. For example, if a snapshot is taken at a time t0, and only file file1.dat is modified between time t0 and time t1, then a CDP system typically captures only the modifications to file1.dat. The system may be restored as it existed at time t1 by restoring the system to the time t0 snapshot, and then adding any modification made to file file1.dat to arrive at the image of the system as it existed at time t1. For a CDP system to work, however, the snapshots that are taken cannot be modified after they are created, since the modifications between snapshots are captured in the CDP system, and the snapshots themselves relate to the state of the system at the time they are taken.
Some applications or filesystems, however, may desire a snapshot that can be later modified to allow for a better restoration at a later time. For example, databases may not be able to copy log files to a snapshot at the time the snapshot is created. Database software may flush the log files when the snapshot is created, and the log files may be applied to the snapshot after the snapshot is created. The log files may be required for an adequate system restoration, so the log files may be a necessary or otherwise desirable addition to the snapshot. After other applications have applied writes that they may require to the snapshot, the snapshot may be placed in a read-only state, and a backup operation may be performed.
A system which utilizes, for example, a CDP system and requires that snapshots be writable after they are created, may result in corrupt snapshots for the CDP system if the snapshots are writable. However, a system which creates only read-only snapshots for a CDP system may not be able to utilize a post-snapshot modification system as described above.
In view of the foregoing, it may be understood that there are significant problems and shortcomings associated with current snapshot backup and restoration technologies.